#ifndef FOUNDATION_IOTACQ_TASK_H
#define FOUNDATION_IOTACQ_TASK_H

#include <vendor_global.h>
#include <settings/config_parser.h>
#include <leoyun/yun_rpc.h>
#include <unordered_map>
#include <uv.h>

namespace iot_acq {
class AcqTask : public vendor::VendorIf {
public:
    virtual void OnEvent(void *args);
    virtual void OnTimer(void *args);
    virtual void OnShot(void *args);

    void PushRpc(const std::string &name, std::shared_ptr<leoyun::YunRpc> rpc);

private:
    std::unordered_map<std::string, std::shared_ptr<leoyun::YunRpc>> mapRpc_;
};
} // namespace iot_acq

#endif // FOUNDATION_IOTACQ_TASK_H